package com.utils.export;

import java.text.SimpleDateFormat;
import java.util.List;

import javax.servlet.http.HttpServletResponse;

import com.google.common.collect.Lists;
import com.utils.dateUtil.DateUtil;
import com.wf.course.model.member.MemberRechargeOrder;

public class CoinRechargeExcelExporter {
	/**
	 * 铜钱充值统计导出
	 * 
	 * @param response
	 * @param coinRechargelist
	 */
	public void exportExcel(HttpServletResponse response, List<MemberRechargeOrder> coinRechargelist) {
		// 定义导出的Excel文件名称
		String fileName = "铜钱充值统计信息表" + DateUtil.getDateString(new SimpleDateFormat("yyyyMMddHHmmss"));
		// 表头处理
		List<String> headerList = Lists.newArrayList();
		headerList.add("序号");
		headerList.add("用户姓名");
		headerList.add("用户手机");
		headerList.add("支付交易号");
		headerList.add("订单类型");
		headerList.add("原铜钱价值");
		/*headerList.add("新铜钱价值");
		headerList.add("金币价值");*/
		headerList.add("充值金额");
		headerList.add("返利铜钱");
		headerList.add("支付时间");
		headerList.add("支付类型");
		headerList.add("订单类型");
		headerList.add("订单创建时间");
		headerList.add("备注");
		// 数据集合
		List<List<String>> dataList = Lists.newArrayList();
		// 序号
		int colNum = 0;
		for (MemberRechargeOrder coinR : coinRechargelist) {
			colNum++;
			Object value;
			// 每一行的数据list
			List<String> dataRowList = Lists.newArrayList();
			// 序号
			dataRowList.add(String.valueOf(colNum));
			//用户姓名
			value=coinR.getUserName();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//用户手机
			value=coinR.getTelephone();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//订单编号
			value=coinR.getOrder_no();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//原铜钱价值
			value=coinR.getCoinValue();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			/*//新铜钱价值
			value=coinR.getNewcoinValue();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//金币价值
			value=coinR.getGoldValue();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));*/
			//充值金额
			value=coinR.getRecharge_money();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//返利铜钱
			value=coinR.getRebate();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//支付时间
			value=coinR.getOrder_paytime();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//支付类型
			value=coinR.getPay_type();
			value=value== null?"":value;
			if("1".equals(String.valueOf(value))){
				dataRowList.add("微信");				
			}else if("2".equals(String.valueOf(value))){
				dataRowList.add("支付宝");
			}
			//订单类型
			value=coinR.getOrder_status();
			value=value== null?"":value;
			if("1".equals(String.valueOf(value))){
				dataRowList.add("生成订单");				
			}else if("2".equals(String.valueOf(value))){
				dataRowList.add("支付中");
			}else if("3".equals(String.valueOf(value))){
				dataRowList.add("支付成功");
			}
			//支付交易号
			value=coinR.getTransaction_id();
			value=value==null?"":value;
			dataRowList.add(String.valueOf(value));
			//订单创建时间
			value=coinR.getOrder_time();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			//备注
			value=coinR.getRemark();
			value=value== null?"":value;
			dataRowList.add(String.valueOf(value));
			dataList.add(dataRowList);
		}
		//导出数据
		ExportExcel.doExportExcel(response, fileName, headerList, dataList);
	}
}
